/**
 * @author zhangshuai
 * @version V1.0
 * @Project Java2_26
 * @Package PACKAGE_NAME
 * @Description:
 * @Date 2025/5/19 10:49
 */

public class Train {
    //创建列车类，列车类有一个成员座位，座位也是一个类，方法包含占用（occpuy）和回收（recycle）。
    //乘客
    private static Integer passenger = 10;
    private  Integer passenger1 = 10;
    //成员座位
    private Seats seat = new Seats();

    public static void main(String[] args) {
        //new Train().seat.occpuy();//调用座位的占用方法

       /* Seat seat1 = new Seat();
        Train train = new Train();
        train.seat = seat1;
        train.seat.occpuy();//调用座位的占用方法
        //调用座位的回收方法
        train.seat.recycle();*/

        //创建一个座位类对象

        Seats seats = new Seats();

        new Train().GetOn();
        new Train().GetOff();

        new Train().test();

    }

    //座位类当成成员内部类

    //静态内部类
    //静态内部类可以访问外部类的静态成员，不能访问外部类的非静态成员
    //静态内部类的对象可以直接创建，不需要外部类的对象
    static class Seats{
        //方法包含占用（occpuy）和回收（recycle）
        public void occpuy(){
            passenger ++;
            System.out.println("占用" + passenger);
        }
        public void recycle(){
            passenger --;
            System.out.println("回收" + passenger);
        }
    }

    public  void GetOn(){
        //调用座位的占用方法

        seat.occpuy();




    }
    //
    public void GetOff(){
        //调用座位的回收方法
        seat.recycle();
    }

    //  局部内部类
    public void test(){
        //局部内部类可以访问外部类的静态成员，不能访问外部类的非静态成员
        System.out.println("局部内部方法");
        String name = "zs";
        //局部内部类的对象需要在方法中创建,不能在方法外去创建
        class Inner{
            public void test(){
                System.out.println(name+"局部内部类方法");
            }
        }
        Inner inner = new Inner();
        inner.test();
    }

    //
}